Consolidate tabs and menu into titlebar#9
Merged
asystemoffields merged 3 commits intomainfrom Mar 8, 2026
Merged
Conversation
Remove the 4 floating action buttons from the titlebar and replace with a single compact dropdown trigger (▾) that opens a combined menu showing all categories (File, Edit, Search, View) with section headers. Reduce titlebar height from 40px to 30px so tabs and title move up. https://claude.ai/code/session_013uWpT9xBhNcN2PtRU4XotZ
Set TABBAR_H to 0 and increase TITLEBAR_H to 36. Tabs are now rendered inline in the titlebar after the dropdown button, with tab click handling moved into the titlebar region. The separate render_tabbar() is now a no-op. This puts the dropdown icon, tabs, and window controls all on one line, eliminating the second row. https://claude.ai/code/session_013uWpT9xBhNcN2PtRU4XotZ
Reorder titlebar: tabs start from left edge, then (+) new tab button, then (▾) dropdown trigger. The + and × (close tab) icons now use font_ui instead of font_ui_small for better visibility. Dropdown button position is computed dynamically and stored in dropdown_btn_x so wndproc hit-testing stays in sync. The dropdown menu panel now appears below the trigger button wherever it ends up. https://claude.ai/code/session_013uWpT9xBhNcN2PtRU4XotZ
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR refactors the UI layout to integrate tabs and the dropdown menu directly into the titlebar, eliminating the separate tabbar and improving space efficiency.
Summary
The editor previously had a separate tabbar below the titlebar for tab management. This change moves tab rendering and interaction into the titlebar itself, and consolidates the menu system into a single dropdown button positioned after the tabs. This creates a more compact, modern interface similar to contemporary text editors.
Key Changes
render_tabbar()intorender_titlebar(), positioned inline starting from the left edge after a small marginTITLEBAR_Hreduced from 40 to 36 pixelsTABBAR_Hset to 0 (no longer used)MENUBAR_Hremains 0fab_hoverwithdropdown_hover(boolean)dropdown_btn_xto track computed dropdown button positionmenu_opennow uses -1 for closed, 0+ for open statemenu_hover_itemnow uses flat indexing across all menusImplementation Details
dropdown_btn_xcomputed during titlebar renderinghttps://claude.ai/code/session_013uWpT9xBhNcN2PtRU4XotZ